← Back to issue list

Git source pull crashes if git not installed

View original Launchpad issue

Metadata

Project
snapcraft (launchpad)
Number
#1828548
Type
issue
State
open
Author
~cmatsuoka
Labels
Created
2019-05-10 12:02:11.966953+00:00
Updated
2019-05-10 12:02:11.966953+00:00
Closed

Current evaluation

No evaluation has been recorded for this issue yet.

Issue body

If a part uses a git source and git is not installed on the system, FileNotFoundError is raised. This situation should be handled in a more graceful way. Steps to reproduce: remove (or rename) the git executable from the system, and build a snap with a part that uses `source-type: git`. ``` Pulling gotty Sorry, an error occurred in Snapcraft: Traceback (most recent call last): (...) File "/home/claudio/snapcraft/cmatsuoka/snapcraft/internal/pluginhandler/__init__.py", line 460, in _do_pull self.source_handler.pull() File "/home/claudio/snapcraft/cmatsuoka/snapcraft/internal/sources/_git.py", line 184, in pull self._clone_new() File "/home/claudio/snapcraft/cmatsuoka/snapcraft/internal/sources/_git.py", line 172, in _clone_new self._run(command + [self.source, self.source_dir], **self._call_kwargs) File "/home/claudio/snapcraft/cmatsuoka/snapcraft/internal/sources/_base.py", line 87, in _run subprocess.check_call(command, **kwargs) File "/usr/lib/python3.6/subprocess.py", line 286, in check_call retcode = call(*popenargs, **kwargs) File "/usr/lib/python3.6/subprocess.py", line 267, in call with Popen(*popenargs, **kwargs) as p: File "/usr/lib/python3.6/subprocess.py", line 709, in __init__ restore_signals, start_new_session) File "/usr/lib/python3.6/subprocess.py", line 1344, in _execute_child raise child_exception_type(errno_num, err_msg, err_filename) FileNotFoundError: [Errno 2] No such file or directory: 'git': 'git' ```

Evaluation history

No evaluation history available.